%code %include storeddata.inc %/include %include resulttable.inc %/include function CachedProperty (AItem: TCatalogItem; AXMPProperty: String): WideString; begin result := ToWideString (''); Catalog.FindXMPCachedTagValueForItem (AItem, AXMPProperty, result); result := Trim(result); end; function EmbeddedFlash (AItem: TCatalogItem): WideString; const cWidth = 640; cHeight = 510; begin ALink := '%var:PageOffset/loadimage.psc?image=' + AItem.GUID + '&original=1'; result := toWideString(''); result := result + ''; result := result + ''; result := result + ''; result := result + ''; result := result + ''; result := result + ''; result := result + ''; result := result + ''; result := result + ''; end; function EmbeddedQuickTime (AItem: TCatalogItem): WideString; const cWidth = 320; cHeight = 300; var ALink: WideString; begin ALink := '%var:PageOffset/loadimage.psc?image=' + AItem.GUID + '&original=1'; result := toWideString(''); result := result + ''; result := result + CrLf + ''; result := result + CrLf + ''; result := result + CrLf + ''; result := result + CrLf + ''; result := result + CrLf + ''; result := result + CrLf + ''; end; function EmbeddedWindowsMedia (AItem: TCatalogItem): WideString; const cWidth = 480; cHeight = 360; var ALink: WideString; begin result := toWideString(''); ALink := '%var:PageOffset/loadimage.psc?image=' + AItem.GUID + '&original=1'; result := result + CrLf + ''; result := result + CrLf + ''; result := result + CrLf + ''; result := result + CrLf + ''; result := result + CrLf + ''; result := result + CrLf + ''; result := result + CrLf + ''; result := result + CrLf + ''; result := result + CrLf + ''; end; function AddItemImage (AItem: TCatalogItem): WideString; begin result := toWideString(''); if WideSameText(WideExtractFileExt (AItem.FileName), '.mov') or WideSameText(WideExtractFileExt (AItem.FileName), '.3gp') then result := result + EmbeddedQuickTime (AItem) else if ( WideSameText(WideExtractFileExt (AItem.FileName), '.swf') or WideSameText(WideExtractFileExt (AItem.FileName), '.flv') ) then result := result + EmbeddedFlash (AItem) else if ( WideSameText(WideExtractFileExt (AItem.FileName), '.avi') or WideSameText(WideExtractFileExt (AItem.FileName), '.mpg') or WideSameText(WideExtractFileExt (AItem.FileName), '.mpeg') or WideSameText(WideExtractFileExt (AItem.FileName), '.wmv') ) then result := result + EmbeddedWindowsMedia (AItem) else result := result + '' + AItem.ImageName + ''; end; var AItems: TCatalogItems; AItem, ANextItem, APrevItem: TCatalogItem; APage, ANextPage: Integer; ALink: String; AProps: TCatalogItemProps; i: Integer; begin result := toWideString(''); if not FindStoredData (Request.Params.Values['ds'], AItems, False) then exit; APage := 1; if IsValidNumberString(Request.Params.Values['page'], False) then APage := StrToInt(Request.Params.Values['page']); AItem := AItems.Items[APage - 1]; ANextPage := (APage div ThumbCount) + 1; if APage mod ThumbCount = 0 then ANextPage := ANextPage - 1; if AItem.Index > 0 then APrevItem := AItems.Items[AItem.Index - 1] else APrevItem := nil; if AItem.Index < AItems.Count - 1 then ANextItem := AItems.Items[AItem.Index + 1] else ANextItem := nil; result := result + ''; if Request.Params.Values['showtitle'] <> '0' then begin result := result + ' '; result := result + ' '; result := result + ' '; end; result := result + ' '; result := result + ' '; result := result + ' '; if Request.Params.Values['showlabels'] <> '0' then begin result := result + ' '; result := result + ' '; result := result + ' '; end; result := result + ' '; result := result + ' '; result := result + ' '; result := result + '
'; result := result + ''; result := result + ''; result := result + '
'; result := result + '
' + '(loading...)
 
'+ '
' + ''; result := result + '
'; result := result + '
'; ALink := 'javascript:getHTML(''%var:PageOffset/./modules/resulttable.psc'', ''thumbs'', ''ds=' + Request.Params.Values['ds'] + '&GUID=' + AItems.GUID + '&Page=' + IntToStr(ANextPage) + '&count=' + Request.Params.Values['count'] + '&thumbsize=' + Request.Params.Values['thumbsize'] + ''')'; result := result + ''; result := result + ''; result := result + ''; result := result + ' 
'; result := result + '
'; ALink := 'javascript:getHTML(''%var:PageOffset/./modules/resulttable.psc'', ''thumbs'', ''ds=' + Request.Params.Values['ds'] + '&GUID=' + AItems.GUID + '&Page=' + IntToStr(ANextPage) + '&count=' + Request.Params.Values['count'] + '&thumbsize=' + Request.Params.Values['thumbsize'] + ''')'; result := result + ''; result := result + AddItemImage (AItem); result := result + ''; result := result + '
'; result := result + '
'; result := result + '
'; AProps := TCatalogItemProps.Create (TCatalogItemProp, ''); Catalog.EnumPropsForItem (AItem, AProps, False, False); Catalog.PathNameForProps (AProps, ' :: ', True); AProps.Sort('PropName', stAscending); for i := 0 to AProps.Count - 1 do begin result := result + '  | ' + '' + ' ' + AProps.Items[i].PropName + '' + ''; end; if AProps.Count > 0 then result := result + '  |  '; AProps.Free; result := result + '
'; if IsAdmin then begin if AItem.MediumLoaded then begin if WideFileExists(AItem.FileName) then begin result := result + '' + 'download original' + '' + ''; end; end; end; result := result + '
'; result := result + '
'; //result := result + ' (loading...)'; result := result + '
'; result := result + '
'; end; %/code